//说明：本程序旨在模拟真实情况，因此就算病人在12点之前到达医院，但若前面问诊耽误较长时间，导致12点时12点前来的病人还没来得及问诊的情况时，不会继续问诊，也就是说，仅计算12点前问诊完毕的人
#include"使用队列结构实现医院诊室看病流程模拟.h"

int main()
{
	try
	{
		auto information = MultipleSimulations();
		auto func = [&information](){
			if(information._num - 0.5 >= (int)information._num)
			++information._num;};
		cout << "以下为模拟后的平均结果：" << endl;
		cout << "医生平均等待时间： " << information._doctorwait << "min" << endl;
		cout << "平均病人总计等待时间： " << information._npatientwait << "min" << endl;
		cout << "平均就诊人数： " << information._num << endl;
		func();
		cout << "综上，上午推荐的放号数为" << (int)information._num << "号" << endl;
		return 0;
	}
	catch(const std::bad_alloc& errid)
	{
		cout << "出现内存申请失败问题！";
	}
	catch(...)
	{
		cout << "出现未知异常！" << endl;
	}
}

